@charset "utf-8";








// #fadeout3{
//     font-size: 24px;
// }

/* CSS Document */

.myfadeOut {
    font-size: 30px;
    color: #000;
    font-weight: bold;
}
.myfadeOut span {
    opacity: 0;
    opacity: 0;
    transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transition: opacity cubic-bezier(.57, .1, .18, 1.03) .8s;
    -ms-transition: opacity cubic-bezier(.57, .1, .18, 1.03) .8s;
    -o-transition: opacity cubic-bezier(.57, .1, .18, 1.03) .8s;
    -webkit-transition: opacity cubic-bezier(.57, .1, .18, 1.03) .8s;
    -moz-transition: opacity cubic-bezier(.57, .1, .18, 1.03) .8s;
}
.main-box {
    background-color: #fff;
    width: 500px;
    margin: 0 auto;
}
#fadeout3 {
    color: #000
}
.fadeInMask {
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn
}

.fadeOut.animated,
.fadeInMask.animated {
    -webkit-animation-duration: 0.15s;
    -moz-animation-duration: 0.15s;
    -o-animation-duration: 0.15s;
    animation-duration: 0.15s;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both
}

.fadeInMask {
    position: relative
}

.fadeInMask:before {
    content: '';
    display: inline-block;
    cursor: pointer;
    position: absolute;
    background-color: #fff;
    width: 100%;
    height: 100%;
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn
}

.fadeInMask.Org:before {
    background-color: #000;
}

.fadeInMask.animated:before {
    -webkit-animation-duration: 0.08s;
    -moz-animation-duration: 0.08s;
    -o-animation-duration: 0.08s;
    animation-duration: 0.08s;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both
}

#fadeout3 {
    // font-size: 30px;
    font-weight: bold;
}
.banner-demo {
    height: 805px;
    position: relative;
    overflow: hidden;
}

.banner-demo .banner_item {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    transition: transform 1.5s cubic-bezier(.19, 1, .22, 1);
    background-position: center center; // background-attachment: fixed;
    height: 805px;
    background-size: cover;
    background-repeat: no-repeat;
}



@keyframes icon {
    0% {
        clip: rect(0, 0, 90px, 0);
        transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0)
    }
    100% {
        clip: rect(0, 90px, 90px, 0);
        transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg)
    }
}

@keyframes icon_show {
    0% {
        opacity: 0;
        transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%)
    }
    30% {
        opacity: 0
    }
    100% {
        opacity: 1;
        transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0)
    }
}

@keyframes icon_desc_show {
    0% {
        opacity: 0;
        transform: translateX(-25%);
        -ms-transform: translateX(-25%);
        -o-transform: translateX(-25%);
        -webkit-transform: translateX(-25%);
        -moz-transform: translateX(-25%)
    }
    30% {
        opacity: 0
    }
    100% {
        opacity: 1;
        transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0)
    }
}


.icon-item {
    width: 75px;
    height: 75px;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    margin: 0 auto;
}

.demolist.scroll-watch-in-view .icon-item i {
    visibility: visible!important;
    animation: icon cubic-bezier(.68, .18, .13, .98) 1.6s 1 both;
    -webkit-animation: icon cubic-bezier(.68, .18, .13, .98) 1.6s 1 both;
    -moz-animation: icon cubic-bezier(.68, .18, .13, .98) 1.6s 1 both;
    -o-animation: icon cubic-bezier(.68, .18, .13, .98) 1.6s 1 both;
}

.demolist.scroll-watch-in-view .icon-item span {
    visibility: visible!important;
    animation: icon_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
    -webkit-animation: icon_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
    -moz-animation: icon_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
    -o-animation: icon_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
}

.icon-item i {
    position: absolute;
    left: 0;
    top: 0;
    content: '';
    width: 75px;
    height: 73px;
    border: 2px solid silver;
    border-radius: 50%;
    visibility: hidden;
    box-sizing: border-box;
}

.icon-item span {
    background: url(../images/icon9.png) no-repeat center;
    position: absolute;
    left: 0;
    top: 0;
    width: 75px;
    height: 73px;
    visibility: hidden;
}
.demolist {
    width: 200px;
    text-align: center;
}
.demolist h3 {
    font-size: 18px;
    color: #333;
    margin: 12px 0 5px;
}
.demolist p {
    font-size: 12px;
    color: #000;
    font-weight: lighter;
}

.demolist.scroll-watch-in-view .desc {
    visibility: visible!important;
    animation: icon_desc_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
    -webkit-animation: icon_desc_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
    -moz-animation: icon_desc_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
    -o-animation: icon_desc_show cubic-bezier(.63, .32, .17, .98) 1.4s .9s 1 both;
}

.rect-demo {
    width: 220px;
    text-align: center;
    height: 85px;
}
.rect-demo .pro {
    position: relative;
    border: 1px solid transparent;
    border-radius: 5px;
    width: 100%;
    height: 100%;
    transition: border-color 1.2s 2.4s;
}

.rect-demo.scroll-watch-in-view .pro {
    // border-color: #c3c3c3;
}

.rect-demo .pro .icon_show {
    visibility: hidden;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.rect-demo.scroll-watch-in-view .pro .icon_show {
    visibility: visible;
    animation: icon_show cubic-bezier(.63, .32, .17, .98) 1.4s .5s 1 both;
}

.rect-demo .pro i {
    background-color: #c3c3c3;
    -webkit-transition: transform 1s cubic-bezier(.35, .02, .08, 1.01), opacity .3s .8s;
    transition: transform 1s cubic-bezier(.35, .02, .08, 1.01), opacity .3s .8s;
    position: absolute;
}

.rect-demo.scroll-watch-in-view i {
    opacity: 1;
}

.rect-demo .pro i:nth-child(1) {
    top: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    transform-origin: left center; // transition:transform 1s cubic-bezier(.35,.02,.08,1.01),opacity .3s;
    // animation-fill-mode: both;
}
.rect-demo.scroll-watch-in-view i:nth-child(1) {
    transform: scaleX(1);
}

.rect-demo .pro i:nth-child(3) {
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    transform-origin: right center; // transition:transform 2s cubic-bezier(.35,.02,.08,1.01) 0.8s ,opacity .3s 0.8s;
}
.rect-demo.scroll-watch-in-view i:nth-child(3) {
    transform: scaleX(1);
}

.rect-demo .pro i:nth-child(2) {
    top: 0px;
    right: -1px;
    width: 1px;
    height: 100%;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    transform-origin: center top; // transition:transform 2s cubic-bezier(.35,.02,.08,1.01) 0.4s ,opacity .3s .4s;
}
.rect-demo.scroll-watch-in-view i:nth-child(2) {
    transform: scaleY(1);
}

.rect-demo .pro i:nth-child(4) {
    top: 0px;
    left: -1px;
    width: 1px;
    height: 100%;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    transform-origin: center bottom; // transition:transform 2s cubic-bezier(.35,.02,.08,1.01) 1.2s ,opacity .3s 1.2s;
}
.rect-demo.scroll-watch-in-view i:nth-child(4) {
    transform: scaleY(1);
}


.img-demo {
    display: inline-block;
    width: 375px;
    overflow: hidden;
    position: relative;
}

.double_show::after {
    content: '';
    position: absolute;
    width: 101%;
    height: 102%;
    left: -1px;
    top: -1px;
    background: #fff;
    transition: transform cubic-bezier(.575, .005, .285, 1.005) 2s;
    -ms-transition: transform cubic-bezier(.575, .005, .285, 1.005) 2s;
    -o-transition: transform cubic-bezier(.575, .005, .285, 1.005) 2s;
    -webkit-transition: transform cubic-bezier(.575, .005, .285, 1.005) 2s;
    -moz-transition: transform cubic-bezier(.575, .005, .285, 1.005) 2s;
}
.double_show.scroll-watch-in-view:after {
    transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
}

.img-demo .pro {
    border-radius: 5px;
    width: 100%;
    overflow: hidden;
    height: auto;
    transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
}
.img-demo .pro img {
    width: 100%;
    max-width: 100%;
    height: auto;
    transition: transform 1s;
    -ms-transition: transform 1s;
    -o-transition: transform 1s;
    -webkit-transition: transform 1s;
    -moz-transition: transform 1s;
}
.img_scale:hover img {
    transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
}





.img-demo2 {
    width: 300px;
    position: relative;
    overflow: hidden;
}
.img-demo2::before {
    content: '';
    position: absolute;
    background: #526ac4;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    -webkit-transform: translate3d(0%, 0, 0) rotate(.0001deg);
    -moz-transform: translate3d(0%, 0, 0) rotate(.0001deg);
    transform: translate3d(0%, 0, 0) rotate(.0001deg);
    z-index: 22;
    -o-transition: transform ease .6s;
    -moz-transition: transform ease .6s;
    transition: transform ease .6s;
}
.img-demo2 img {
    display: block;
    width: 100%;
    opacity: 0;
    -moz-transition-delay: .3s;
    -o-transition-delay: .3s;
    transition-delay: .3s;
    -webkit-transform: translate3d(50%, 0, 0);
    -moz-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
    transition: all 1s;
}

.img-demo2.scroll-watch-in-view::before {
    -moz-transition-delay: .6s;
    -o-transition-delay: .6s;
    transition-delay: .6s;
    -webkit-transform: translate3d(-100%, 0, 0) rotate(.0001deg);
    -moz-transform: translate3d(-100%, 0, 0) rotate(.0001deg);
    transform: translate3d(-100%, 0, 0) rotate(.0001deg);
}

.img-demo2.scroll-watch-in-view img {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0);
    opacity: 1;
    -moz-transition-delay: .3s;
    -o-transition-delay: .3s;
    transition-delay: .3s;
}






.link-icon {
    color: #fff;
    background-color: #282828;
    -webkit-transform: translate(10%, -50%);
    -moz-transform: translate(10%, -50%);
    -ms-transform: translate(10%, -50%);
    -o-transform: translate(10%, -50%);
    transform: translate(10%, -50%);
    box-sizing: border-box;
}
.link-icon:before {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -webkit-transition: -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity .5s cubic-bezier(0.215, 0.61, 0.355, 1), border .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: -moz-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity .5s cubic-bezier(0.215, 0.61, 0.355, 1), border .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity .5s cubic-bezier(0.215, 0.61, 0.355, 1), border .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1)
}


.link-icon {
    position: relative;
    z-index: 2;
    display: block;
    width: 40px;
    height: 40px;
    margin-right: 0.8em;
    border: 2px solid #282828;
    border-radius: 50%;
    cursor: pointer;
    color: #282828;
    background-color: #fff;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: border .5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color .5s cubic-bezier(0.645, 0.045, 0.355, 1), color .5s cubic-bezier(0.645, 0.045, 0.355, 1), opacity .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: border .5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color .5s cubic-bezier(0.645, 0.045, 0.355, 1), color .5s cubic-bezier(0.645, 0.045, 0.355, 1), opacity .5s cubic-bezier(0.645, 0.045, 0.355, 1), -moz-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: border .5s cubic-bezier(0.645, 0.045, 0.355, 1), background-color .5s cubic-bezier(0.645, 0.045, 0.355, 1), color .5s cubic-bezier(0.645, 0.045, 0.355, 1), opacity .5s cubic-bezier(0.645, 0.045, 0.355, 1), transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.link-icon:before {
    position: absolute;
    left: -2px;
    top: -2px;
    display: block;
    content: "";
    width: 40px;
    height: 40px;
    border: 3px solid #282828;
    border-radius: 50%;
    pointer-events: none;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: scale(1.4);
    -moz-transform: scale(1.4);
    -ms-transform: scale(1.4);
    -o-transform: scale(1.4);
    transform: scale(1.4);
    -webkit-transition: -webkit-transform .5s cubic-bezier(0.77, 0, 0.33, 1), opacity .5s cubic-bezier(0.77, 0, 0.33, 1), border .5s cubic-bezier(0.77, 0, 0.33, 1), -webkit-transform .5s cubic-bezier(0.77, 0, 0.33, 1);
    -moz-transition: -moz-transform .5s cubic-bezier(0.77, 0, 0.33, 1), opacity .5s cubic-bezier(0.77, 0, 0.33, 1), border .5s cubic-bezier(0.77, 0, 0.33, 1), -webkit-transform .5s cubic-bezier(0.77, 0, 0.33, 1);
    transition: transform .5s cubic-bezier(0.77, 0, 0.33, 1), opacity .5s cubic-bezier(0.77, 0, 0.33, 1), border .5s cubic-bezier(0.77, 0, 0.33, 1), -webkit-transform .5s cubic-bezier(0.77, 0, 0.33, 1);
}
.link-icon:hover {
    color: #fff;
    background-color: #282828;
    -webkit-transform: translate(10%, -50%);
    -moz-transform: translate(10%, -50%);
    -ms-transform: translate(10%, -50%);
    -o-transform: translate(10%, -50%);
    transform: translate(10%, -50%);
}
.link-icon:hover:before {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -webkit-transition: -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity .5s cubic-bezier(0.215, 0.61, 0.355, 1), border .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: -moz-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity .5s cubic-bezier(0.215, 0.61, 0.355, 1), border .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .5s cubic-bezier(0.215, 0.61, 0.355, 1), opacity .5s cubic-bezier(0.215, 0.61, 0.355, 1), border .5s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform .5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.link-icon .link-icon-icon {
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    left: 9px;
    top: 8px;
    -webkit-transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: -moz-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1)
}
.link-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    fill: currentColor;
    vertical-align: middle
}



.tit-overlap {
    position: relative;
    display: inline-block;
    padding: 8px;
    outline: none;
    overflow: hidden;
    color: #282828;
    font-size: 24px;
    line-height: 30px;

    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    box-sizing: border-box;
    background-color: transparent;
    -webkit-transition: color .5s cubic-bezier(0.77, 0, 0.33, 1), background .5s cubic-bezier(0.77, 0, 0.33, 1), border-color .5s cubic-bezier(0.77, 0, 0.33, 1);
    -moz-transition: color .5s cubic-bezier(0.77, 0, 0.33, 1), background .5s cubic-bezier(0.77, 0, 0.33, 1), border-color .5s cubic-bezier(0.77, 0, 0.33, 1);
    transition: color .5s cubic-bezier(0.77, 0, 0.33, 1), background .5s cubic-bezier(0.77, 0, 0.33, 1), border-color .5s cubic-bezier(0.77, 0, 0.33, 1);
}
.tit-overlap:after {
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: #ffc308;
    -webkit-transform: translate3d(101%, 0, 0);
    -moz-transform: translate3d(101%, 0, 0);
    -ms-transform: translate3d(101%, 0, 0);
    -o-transform: translate3d(101%, 0, 0);
    transform: translate3d(101%, 0, 0);
    -webkit-transition: -webkit-transform .5s cubic-bezier(0.77, 0, 0.33, 1);
    -moz-transition: -moz-transform .5s cubic-bezier(0.77, 0, 0.33, 1);
    transition: transform .5s cubic-bezier(0.77, 0, 0.33, 1);
}

.tit-overlap span {
    position: relative;
    display: block;
    z-index: 1;
}
.tit-overlap span:before {
    content: attr(data-letters);
    position: absolute;
    left: 0;
    display: block;
    width: 0%;
    overflow: hidden;
    color: #fff;
    white-space: nowrap;
    -webkit-transition: width .5s cubic-bezier(0.77, 0, 0.33, 1);
    -moz-transition: width .5s cubic-bezier(0.77, 0, 0.33, 1);
    transition: width .5s cubic-bezier(0.77, 0, 0.33, 1);
}
.tit-overlap:hover {
    color: #282828;
}
.tit-overlap:hover span::before {
    width: 100%;
}
.tit-overlap:hover:after {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}






.anim_box {
    width: 300px;
}
.anim_image {
    width: 300px;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    cursor: pointer;
}
.anim_image_top {
    position: absolute;
    -webkit-transform: scale(0, 0);
    opacity: 0;
}





.anim_box.scroll-watch-in-view .anim_image_top {
    opacity: 1;
    filter: Alpha(opacity=100);
    -webkit-transform: scale(1, 1);
    -webkit-transform-origin: top right;
}

.anim_box.scroll-watch-in-view .anim_image_bottom {
    -webkit-transform: scale(0, 0);
    -webkit-transform-origin: bottom left; //从左下消失
    opacity: 0;
}

.anim_box.scroll-watch-in-view:hover .anim_image_top {
    opacity: 0;
    filter: Alpha(opacity=100);
    -webkit-transform: scale(0, 0);
    -webkit-transform-origin: top right;
}
.anim_box.scroll-watch-in-view:hover .anim_image_bottom {
    -webkit-transform: scale(1, 1);
    -webkit-transform-origin: bottom left;
    opacity: 1
}





.wave {
    width: 200px;
    height: 200px;
    position: relative;
    background-image: url(../images/bear.jpg);
    background-position: center center;
    overflow: hidden;
}
.wave .before,
.wave .after {
    content: "";
    position: absolute;
    background-image: url(../images/bear.jpg);
    background-position: center center;
    border-radius: 50%;
}
.wave .before {
    z-index: 2;
}
.wave .after {
    z-index: 3;
}

#wave.ani .before {
    animation: wave 2s ease-out;
    animation-fill-mode: forwards;
}
#wave.ani .after {
    animation: wave 2s ease-out .2s;
    animation-fill-mode: forwards;
}
#wave.ani {
    animation-fill-mode: forwards;
}



@keyframes wave {
    0% {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(1.4);
        width: 30px;
        height: 30px;
    }
    50% {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(1);
        width: 240px;
        height: 240px;
    }
    100% {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(1);
        width: 240px;
        height: 240px;
    }
}
















.card {
    --to: rgb(247, 151, 30);
    --from: rgb(255, 210, 0);
    --center: rgb(251, 181, 15);
    --shadow: rgba(251, 181, 15, 0.5);

    position: relative;
    width: 50vw;
    height: 17.5vw;
    margin: auto;
    overflow: hidden;
    background: linear-gradient(130deg, var(--from), var(--to));
    box-shadow: 0 53px 67px -26px var(--shadow);
    border-radius: 4% / 11.5%;
}


.svg-demo {
    width: 200px;
}



.button-demo {
    position: relative;
    appearance: none;
    -webkit-appearance:none;
    background: #f72359;
    padding: 1em 2em;
    border: none;
    color: white;
    font-size: 1.2em;
    cursor: pointer;
    outline: none;
    overflow: hidden;
    
    width: 200px;
    text-align: center;
    border-radius: 100px;
}

.button-demo span {
    position: relative;
    font-size: 0.65em;
    text-align: center;
}
.button-demo::before {
    --size: 0;
    content: '';
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--size);
    height: var(--size);
    background: radial-gradient(circle closest-side, #4405f7, transparent);
    transform: translate(-50%, -50%);
    transition: width .2s ease, height .2s ease;
     webkit-transition: width .2s ease, height .2s ease;
}
.button-demo:hover::before {
    --size: 400px;
}


.img-move-demo {
    perspective: 600;
}
#img-move-demo {
    width: 300px;
    height: 200px;
    transform: rotateX(calc(var(--mouseY))) rotateY(calc(var(--mouseX)));
}

// 第一个案例结束
@keyframes dash {
    to {
        stroke-dashoffset: 0;
    }
}

.border {
    stroke-dasharray: 1200;
    stroke-dashoffset: 1200;
    animation: dash 1.5s linear forwards;
    /* 设定键盘外轮廓border的动画时间为1.5s */
}
.keyboard {
    stroke-dasharray: 160;
    stroke-dashoffset: 160;
    animation: dash 1s linear forwards;
    /* 设定每个小按键的动画时间为1s，且同步*/
    animation-delay: 1.5s;
    /* 设定动画延迟开始的时间为border的动画完成时间，以确保动画的连续性，但一定要把animation-delay的设定放到animation之后*/
}
.enter {
    stroke-dasharray: 420;
    stroke-dashoffset: 420;
    animation: dash 1.5s linear forwards;
    animation-delay: 2.5s;
    /* 延迟开始时间=上个动画的延迟开始时间+上个动画的持续时间 即2.5=keyboard的1+1.5*/
}
.space {
    stroke-dasharray: 700;
    stroke-dashoffset: 700;
    animation: dash 1s linear forwards;
    animation-delay: 4s;
}
.line {
    stroke-dasharray: 340;
    stroke-dashoffset: 340;
    animation: dash 1s linear forwards;
    animation-delay: 5s;
}
h3 {
    font-size: 14px;
    line-height: 28px;
    color: #000
}
.svg-demo3 {
    height: 200px;
}
// 给input滑动块加样式
input[type=range] {
    -webkit-appearance: none;
    width: 300px;
    border-radius: 10px;
    /*这个属性设置使填充进度条时的图形为圆角*/
    background: -webkit-linear-gradient(#059CFA, #059CFA) no-repeat;
    background-size: 0% 100%;
}
input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
}
input[type=range]::-webkit-slider-runnable-track {
    height: 15px;
    border-radius: 10px;
    /*将轨道设为圆角的*/
    box-shadow: 0 1px 1px #def3f8, inset 0 .125em .125em #0d1112;
    /*轨道内置阴影效果*/
}
input[type=range]:focus {
    outline: none;
}
input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 25px;
    width: 25px;
    margin-top: -5px;
    /*使滑块超出轨道部分的偏移量相等*/
    background: #ffffff;
    border-radius: 50%;
    /*外观设置为圆形*/
    border: solid 0.125em rgba(205, 224, 230, 0.5);
    /*设置边框*/
    box-shadow: 0 .125em .125em #3b4547;
    /*添加底部阴影*/
}





.container2 {
    width: 300px;
    position: relative;
}
#sprite {
    width: 75px;
    height: 90px;
    background: url(../images/iboy.png) 0 0 no-repeat;
    animation: run 1s steps(80) infinite;
    position: absolute;
    left: 40%;
    top: 16%;
    z-index: 6;
}
.container2:hover #sprite {
    animation-duration: 0.4s;
}
@keyframes run {
    0% {
        background-position: 0 0;
    }
    100% {
        background-position: -6000px 0
    }
}




.sparkley {
    // background: #3e5771;
    color: white;
    border: none; // padding: 16px 36px;
    font-weight: normal; // border-radius: 3px;
    transition: all 0.25s ease; // box-shadow: 0 38px 32px -23px black;
    // margin: 0 1em 1em;
}
.sparkley2 {
    // background: #3e5771;
    color: white;
    border: none;
    padding: 16px 36px;
    font-weight: normal; // border-radius: 3px;
    transition: all 0.25s ease; // box-shadow: 0 38px 32px -23px black;
    // margin: 0 1em 1em;
}

.sparkley:hover {
    // background: #2c3e50;
    color: rgba(255, 255, 255, 0.2);
}
@keyframes leftwings {
    0% {
        transform: rotateY(0deg);
        transform-origin: right center;
        perspective: 201px;
    }
    50% {
        transform: rotateY(70deg);
        transform-origin: right center;
        perspective: 201px;
    }
    100% {
        transform: rotateY(0deg);
        transform-origin: right center;
        perspective: 201px;
    }
}
@keyframes rightwings {
    0% {
        transform: rotateY(0);
        transform-origin: left center;
        perspective: 201px;
    }
    50% {
        transform: rotateY(-70deg);
        transform-origin: left center;
        perspective: 201px;
    }
    100% {
        transform: rotateY(0);
        transform-origin: left center;
        perspective: 201px;
    }
}

@keyframes butterfly {
    0% {
        opacity: 0;
        transform: rotate(-60deg) scale(0.5) translate3d(0, 0, 0);
        transform-origin: center center;
    }
    100% {
        opacity: 1;
        transform: rotate(-60deg) scale(0.6) translate3d(0, -20px, 0);
        transform-origin: center center;
        offset-distance: 100%;
    }
}



@keyframes butterfly2 {
    0% {
      
        opacity: 0;
        transform: translate3d(80px, 60px, 0) scale(0) rotate(30deg);
        transform-origin: bottom center;
    }
    // 6% {
    //     opacity: 0.5;
    //     transform: translate3d(80px, 60px, 0) scale(0.8) rotate(30deg);
    // }
    // 12% {
    //     transform: translate3d(90px, 55px, 0) scale(0.76) rotate(40deg);
    //     opacity: 1;
    // }
    // 18% {
    //     transform: translate3d(100px, 50px, 0) scale(0.8) rotate(45deg);
    //     opacity: 1;
    // }
    // 24% {
    //     transform: translate3d(110px, 45px, 0) scale(0.8) rotate(50deg);
    //     opacity: 1;
    // }    
    // 30%{
    //     transform: translate3d(120px, 40px, 0) scale(0.8) rotate(55deg);
    //     opacity: 1; 
    // }
    // 36%{
    //     transform: translate3d(130px, 35px, 0) scale(0.8) rotate(60deg);
    //     opacity: 1; 
    // }   
    50%{
        transform: translate3d(140px, 30px, 0) scale(0.8) rotate(65deg);
        opacity: 1; 
    }   
    // 54%{
    //     transform: translate3d(150px, 25px, 0) scale(0.8) rotate(70deg);
    //     opacity: 1; 
    // }  
    // 60%{
    //     transform: translate3d(160px, 20px, 0) scale(0.8) rotate(75deg);
    //     opacity: 1; 
    // }  
    // 68%{
    //     transform: translate3d(180px, 20px, 0) scale(0.8) rotate(60deg);
    //     opacity: 1; 
    // } 
    100%{
        transform: translate3d(200px, 20px, 0) scale(0.8) rotate(55deg);
        opacity: 1; 
    }                
}





.butterfly {
    transform: rotate(-60deg) scale(0.6) translate3d(0, -20px, 0);
    z-index: 99999;
    width: 60.0px;
    height: 50.0px;
    position: absolute;
    left: 0;
    bottom: 180px;
    transform-style: preserve-3d;
    opacity: 0; // offset-path: path("M10,80 q100,120 120,20 q140,-50 160,0");
    // offset-rotation: reverse;
}
.butterfly2 {
     transform: translate3d(200px, 20px, 0) scale(0.8) rotate(55deg);
}
.container2:hover .butterfly1 {
    opacity: 1;
    animation: butterfly 6s linear 1;
    animation-fill-mode: backwords;
}

.container2:hover .butterfly2 {
    opacity: 1;
    animation:butterfly2 6s linear 1;
    animation-fill-mode: backwords;
}







.butterfly .body {
    width: 15.2px;
    height: 32.8px;
    background: url("../images/body.png") no-repeat;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 9999;
}
.butterfly .leftSide {
    width: 26.7px;
    height: 42.1px;
    background: url("../images/leftSide.png") no-repeat;
    background-size: cover;
    position: absolute;
    left: 2.6px;
    top: 4.0px;
    animation: leftwings 2s infinite;
    z-index: 9999;
}
.butterfly .rightSide {
    width: 28.4px;
    height: 46.0px;
    background: url("../images/rightSide.png") no-repeat;
    background-size: cover;
    position: absolute;
    right: 2.6px;
    top: 0px;
    animation: rightwings 2s infinite;
    z-index: 9999;
}



.butterfly .body2 {
    width: 15.2px;
    height: 32.8px;
    background: url("../images/body2.png") no-repeat;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 9999;
}
.butterfly .leftSide2 {
    width: 30px;
    height: 51.3px;
    background: url("../images/leftSide2.png") no-repeat;
    background-size: cover;
    position: absolute;
    left: 2.6px;
    top: 4.0px;
    animation: leftwings 2s infinite;
    z-index: 9999;
}
.butterfly .rightSide2 {
    width: 30px;
    height: 51.3px;
    background: url("../images/rightSide2.png") no-repeat;
    background-size: cover;
    position: absolute;
    right: 2.6px;
    top: 0px;
    animation: rightwings 2s infinite;
    z-index: 9999;
}






#bg-transition {
    display: none;
}
#bg-transition.is-show {
    display: block;
}
#bg-transition.is-show .bg-transition-cloud {
    // -webkit-animation: bgTransitionCloud 2s steps(32);
    // -moz-animation: bgTransitionCloud 2s steps(32);
    // -ms-animation: bgTransitionCloud 2s steps(32);
    // -o-animation: bgTransitionCloud 2s steps(32);
    animation: bgTransitionCloud 2s steps(32);
    animation-fill-mode: forwards
}

.bg-transition-cloud {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-1.51515152%);
    -moz-transform: translateX(-1.51515152%);
    -ms-transform: translateX(-1.51515152%);
    -o-transform: translateX(-1.51515152%);
    transform: translateX(-1.51515152%);
    height: 100%;
    width: 3300%;
    background-image: url(../images/cloud-sprite.png);
    background-size: 100% 100%
}



@keyframes bgTransitionCloud {
    0% {
        -webkit-transform: translateX(-1.51515152%);
        -moz-transform: translateX(-1.51515152%);
        -ms-transform: translateX(-1.51515152%);
        -o-transform: translateX(-1.51515152%);
        transform: translateX(-1.51515152%)
    }
    to {
        -webkit-transform: translateX(-98.48484848%);
        -moz-transform: translateX(-98.48484848%);
        -ms-transform: translateX(-98.48484848%);
        -o-transform: translateX(-98.48484848%);
        transform: translateX(-98.48484848%)
    }
}

.fill {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999995;
}




@keyframes c {
    0% {
        transform: scaleX(1)
    }
    50% {
        transform: scale3d(1.05, 1.05, 1.05)
    }
    to {
        transform: scaleX(1)
    }
}
@keyframes c {
    0% {
        transform: translateZ(0);
        opacity: 0
    }
    5% {
        opacity: 1
    }
    33% {
        transform: translate3d(0, -57px, 0);
        opacity: 1
    }
    66% {
        transform: translate3d(16px, -114px, 0);
        opacity: 1
    }
    95% {
        opacity: 0;
        transform: translate3d(0, -230px, 0)
    }
    to {
        opacity: 0;
        transform: translateZ(0)
    }
}


@keyframes b {
    0% {
        transform: translateZ(0);
        opacity: 0
    }
    5% {
        opacity: 1
    }
    33% {
        transform: translate3d(98px, 57px, 0);
        opacity: 1
    }
    66% {
        transform: translate3d(196px, 114px, 0);
        opacity: 1
    }
    95% {
        opacity: 0;
        transform: translate3d(294px, 170px, 0)
    }
    to {
        opacity: 0;
        transform: translateZ(0)
    }
}


.bubble-demo {
    width: 290px;
    height: 434px;
    position: relative;
}
.bubble-demo .promo-section-deco__reactor_bulb {
    position: absolute;
    border-radius: 50%;
    background: #63feff;
    animation-iteration-count: infinite;
    animation-name: c;
    animation-play-state: running;
    animation-timing-function: linear;
}


.promo-section-deco__reactor_bulb.size1 {
    width: 11px;
    height: 11px;
    left: 124px;
    top: 256px;
    animation-delay: -.4s;
    animation-duration: 4s;
    transition-delay: .3s;
}
.promo-section-deco__reactor_bulb.size2 {
    width: 18px;
    height: 18px;
    left: 75px;
    top: 236px;
    animation-delay: -1.4s;
    animation-duration: 4s;
    transition-delay: .3s;
}


.promo-section-deco__reactor_bulb.size3 {
    width: 39px;
    height: 39px;
    left: 154px;
    top: 236px;
    animation-delay: -3.4s;
    animation-duration: 5s;
    transition-delay: .3s
}
.promo-section-deco__reactor_bulb.size4 {
    width: 5px;
    height: 5px;
    left: 102px;
    top: 226px;
    animation-delay: -2.4s;
    animation-duration: 3s;
    transition-delay: .3s
}
.promo-section-deco__reactor_bulb.size5 {
    width: 13px;
    height: 13px;
    left: 132px;
    top: 226px;
    animation-delay: -4.4s;
    animation-duration: 2s;
    transition-delay: .3s
}




.arr{
    background: url(../images/arr-demo.png) no-repeat center center;
    width:27px;
    height:50px;
    background-size: cover;
    cursor: pointer;
}
.arr:hover{
      background: url(../images/arr-demo-h.png) no-repeat center center;
}